package com.sunny.fetch.pojo;

import java.util.ArrayList;
import java.util.List;

public class FDividendExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public FDividendExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andTidIsNull() {
            addCriterion("tid is null");
            return (Criteria) this;
        }

        public Criteria andTidIsNotNull() {
            addCriterion("tid is not null");
            return (Criteria) this;
        }

        public Criteria andTidEqualTo(Long value) {
            addCriterion("tid =", value, "tid");
            return (Criteria) this;
        }

        public Criteria andTidNotEqualTo(Long value) {
            addCriterion("tid <>", value, "tid");
            return (Criteria) this;
        }

        public Criteria andTidGreaterThan(Long value) {
            addCriterion("tid >", value, "tid");
            return (Criteria) this;
        }

        public Criteria andTidGreaterThanOrEqualTo(Long value) {
            addCriterion("tid >=", value, "tid");
            return (Criteria) this;
        }

        public Criteria andTidLessThan(Long value) {
            addCriterion("tid <", value, "tid");
            return (Criteria) this;
        }

        public Criteria andTidLessThanOrEqualTo(Long value) {
            addCriterion("tid <=", value, "tid");
            return (Criteria) this;
        }

        public Criteria andTidIn(List<Long> values) {
            addCriterion("tid in", values, "tid");
            return (Criteria) this;
        }

        public Criteria andTidNotIn(List<Long> values) {
            addCriterion("tid not in", values, "tid");
            return (Criteria) this;
        }

        public Criteria andTidBetween(Long value1, Long value2) {
            addCriterion("tid between", value1, value2, "tid");
            return (Criteria) this;
        }

        public Criteria andTidNotBetween(Long value1, Long value2) {
            addCriterion("tid not between", value1, value2, "tid");
            return (Criteria) this;
        }

        public Criteria andTsCodeIsNull() {
            addCriterion("ts_code is null");
            return (Criteria) this;
        }

        public Criteria andTsCodeIsNotNull() {
            addCriterion("ts_code is not null");
            return (Criteria) this;
        }

        public Criteria andTsCodeEqualTo(String value) {
            addCriterion("ts_code =", value, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeNotEqualTo(String value) {
            addCriterion("ts_code <>", value, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeGreaterThan(String value) {
            addCriterion("ts_code >", value, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeGreaterThanOrEqualTo(String value) {
            addCriterion("ts_code >=", value, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeLessThan(String value) {
            addCriterion("ts_code <", value, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeLessThanOrEqualTo(String value) {
            addCriterion("ts_code <=", value, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeLike(String value) {
            addCriterion("ts_code like", value, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeNotLike(String value) {
            addCriterion("ts_code not like", value, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeIn(List<String> values) {
            addCriterion("ts_code in", values, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeNotIn(List<String> values) {
            addCriterion("ts_code not in", values, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeBetween(String value1, String value2) {
            addCriterion("ts_code between", value1, value2, "tsCode");
            return (Criteria) this;
        }

        public Criteria andTsCodeNotBetween(String value1, String value2) {
            addCriterion("ts_code not between", value1, value2, "tsCode");
            return (Criteria) this;
        }

        public Criteria andEndDateIsNull() {
            addCriterion("end_date is null");
            return (Criteria) this;
        }

        public Criteria andEndDateIsNotNull() {
            addCriterion("end_date is not null");
            return (Criteria) this;
        }

        public Criteria andEndDateEqualTo(String value) {
            addCriterion("end_date =", value, "endDate");
            return (Criteria) this;
        }

        public Criteria andEndDateNotEqualTo(String value) {
            addCriterion("end_date <>", value, "endDate");
            return (Criteria) this;
        }

        public Criteria andEndDateGreaterThan(String value) {
            addCriterion("end_date >", value, "endDate");
            return (Criteria) this;
        }

        public Criteria andEndDateGreaterThanOrEqualTo(String value) {
            addCriterion("end_date >=", value, "endDate");
            return (Criteria) this;
        }

        public Criteria andEndDateLessThan(String value) {
            addCriterion("end_date <", value, "endDate");
            return (Criteria) this;
        }

        public Criteria andEndDateLessThanOrEqualTo(String value) {
            addCriterion("end_date <=", value, "endDate");
            return (Criteria) this;
        }

        public Criteria andEndDateLike(String value) {
            addCriterion("end_date like", value, "endDate");
            return (Criteria) this;
        }

        public Criteria andEndDateNotLike(String value) {
            addCriterion("end_date not like", value, "endDate");
            return (Criteria) this;
        }

        public Criteria andEndDateIn(List<String> values) {
            addCriterion("end_date in", values, "endDate");
            return (Criteria) this;
        }

        public Criteria andEndDateNotIn(List<String> values) {
            addCriterion("end_date not in", values, "endDate");
            return (Criteria) this;
        }

        public Criteria andEndDateBetween(String value1, String value2) {
            addCriterion("end_date between", value1, value2, "endDate");
            return (Criteria) this;
        }

        public Criteria andEndDateNotBetween(String value1, String value2) {
            addCriterion("end_date not between", value1, value2, "endDate");
            return (Criteria) this;
        }

        public Criteria andAnnDateIsNull() {
            addCriterion("ann_date is null");
            return (Criteria) this;
        }

        public Criteria andAnnDateIsNotNull() {
            addCriterion("ann_date is not null");
            return (Criteria) this;
        }

        public Criteria andAnnDateEqualTo(String value) {
            addCriterion("ann_date =", value, "annDate");
            return (Criteria) this;
        }

        public Criteria andAnnDateNotEqualTo(String value) {
            addCriterion("ann_date <>", value, "annDate");
            return (Criteria) this;
        }

        public Criteria andAnnDateGreaterThan(String value) {
            addCriterion("ann_date >", value, "annDate");
            return (Criteria) this;
        }

        public Criteria andAnnDateGreaterThanOrEqualTo(String value) {
            addCriterion("ann_date >=", value, "annDate");
            return (Criteria) this;
        }

        public Criteria andAnnDateLessThan(String value) {
            addCriterion("ann_date <", value, "annDate");
            return (Criteria) this;
        }

        public Criteria andAnnDateLessThanOrEqualTo(String value) {
            addCriterion("ann_date <=", value, "annDate");
            return (Criteria) this;
        }

        public Criteria andAnnDateLike(String value) {
            addCriterion("ann_date like", value, "annDate");
            return (Criteria) this;
        }

        public Criteria andAnnDateNotLike(String value) {
            addCriterion("ann_date not like", value, "annDate");
            return (Criteria) this;
        }

        public Criteria andAnnDateIn(List<String> values) {
            addCriterion("ann_date in", values, "annDate");
            return (Criteria) this;
        }

        public Criteria andAnnDateNotIn(List<String> values) {
            addCriterion("ann_date not in", values, "annDate");
            return (Criteria) this;
        }

        public Criteria andAnnDateBetween(String value1, String value2) {
            addCriterion("ann_date between", value1, value2, "annDate");
            return (Criteria) this;
        }

        public Criteria andAnnDateNotBetween(String value1, String value2) {
            addCriterion("ann_date not between", value1, value2, "annDate");
            return (Criteria) this;
        }

        public Criteria andDivProcIsNull() {
            addCriterion("div_proc is null");
            return (Criteria) this;
        }

        public Criteria andDivProcIsNotNull() {
            addCriterion("div_proc is not null");
            return (Criteria) this;
        }

        public Criteria andDivProcEqualTo(String value) {
            addCriterion("div_proc =", value, "divProc");
            return (Criteria) this;
        }

        public Criteria andDivProcNotEqualTo(String value) {
            addCriterion("div_proc <>", value, "divProc");
            return (Criteria) this;
        }

        public Criteria andDivProcGreaterThan(String value) {
            addCriterion("div_proc >", value, "divProc");
            return (Criteria) this;
        }

        public Criteria andDivProcGreaterThanOrEqualTo(String value) {
            addCriterion("div_proc >=", value, "divProc");
            return (Criteria) this;
        }

        public Criteria andDivProcLessThan(String value) {
            addCriterion("div_proc <", value, "divProc");
            return (Criteria) this;
        }

        public Criteria andDivProcLessThanOrEqualTo(String value) {
            addCriterion("div_proc <=", value, "divProc");
            return (Criteria) this;
        }

        public Criteria andDivProcLike(String value) {
            addCriterion("div_proc like", value, "divProc");
            return (Criteria) this;
        }

        public Criteria andDivProcNotLike(String value) {
            addCriterion("div_proc not like", value, "divProc");
            return (Criteria) this;
        }

        public Criteria andDivProcIn(List<String> values) {
            addCriterion("div_proc in", values, "divProc");
            return (Criteria) this;
        }

        public Criteria andDivProcNotIn(List<String> values) {
            addCriterion("div_proc not in", values, "divProc");
            return (Criteria) this;
        }

        public Criteria andDivProcBetween(String value1, String value2) {
            addCriterion("div_proc between", value1, value2, "divProc");
            return (Criteria) this;
        }

        public Criteria andDivProcNotBetween(String value1, String value2) {
            addCriterion("div_proc not between", value1, value2, "divProc");
            return (Criteria) this;
        }

        public Criteria andStkDivIsNull() {
            addCriterion("stk_div is null");
            return (Criteria) this;
        }

        public Criteria andStkDivIsNotNull() {
            addCriterion("stk_div is not null");
            return (Criteria) this;
        }

        public Criteria andStkDivEqualTo(Float value) {
            addCriterion("stk_div =", value, "stkDiv");
            return (Criteria) this;
        }

        public Criteria andStkDivNotEqualTo(Float value) {
            addCriterion("stk_div <>", value, "stkDiv");
            return (Criteria) this;
        }

        public Criteria andStkDivGreaterThan(Float value) {
            addCriterion("stk_div >", value, "stkDiv");
            return (Criteria) this;
        }

        public Criteria andStkDivGreaterThanOrEqualTo(Float value) {
            addCriterion("stk_div >=", value, "stkDiv");
            return (Criteria) this;
        }

        public Criteria andStkDivLessThan(Float value) {
            addCriterion("stk_div <", value, "stkDiv");
            return (Criteria) this;
        }

        public Criteria andStkDivLessThanOrEqualTo(Float value) {
            addCriterion("stk_div <=", value, "stkDiv");
            return (Criteria) this;
        }

        public Criteria andStkDivIn(List<Float> values) {
            addCriterion("stk_div in", values, "stkDiv");
            return (Criteria) this;
        }

        public Criteria andStkDivNotIn(List<Float> values) {
            addCriterion("stk_div not in", values, "stkDiv");
            return (Criteria) this;
        }

        public Criteria andStkDivBetween(Float value1, Float value2) {
            addCriterion("stk_div between", value1, value2, "stkDiv");
            return (Criteria) this;
        }

        public Criteria andStkDivNotBetween(Float value1, Float value2) {
            addCriterion("stk_div not between", value1, value2, "stkDiv");
            return (Criteria) this;
        }

        public Criteria andStkBoRateIsNull() {
            addCriterion("stk_bo_rate is null");
            return (Criteria) this;
        }

        public Criteria andStkBoRateIsNotNull() {
            addCriterion("stk_bo_rate is not null");
            return (Criteria) this;
        }

        public Criteria andStkBoRateEqualTo(Float value) {
            addCriterion("stk_bo_rate =", value, "stkBoRate");
            return (Criteria) this;
        }

        public Criteria andStkBoRateNotEqualTo(Float value) {
            addCriterion("stk_bo_rate <>", value, "stkBoRate");
            return (Criteria) this;
        }

        public Criteria andStkBoRateGreaterThan(Float value) {
            addCriterion("stk_bo_rate >", value, "stkBoRate");
            return (Criteria) this;
        }

        public Criteria andStkBoRateGreaterThanOrEqualTo(Float value) {
            addCriterion("stk_bo_rate >=", value, "stkBoRate");
            return (Criteria) this;
        }

        public Criteria andStkBoRateLessThan(Float value) {
            addCriterion("stk_bo_rate <", value, "stkBoRate");
            return (Criteria) this;
        }

        public Criteria andStkBoRateLessThanOrEqualTo(Float value) {
            addCriterion("stk_bo_rate <=", value, "stkBoRate");
            return (Criteria) this;
        }

        public Criteria andStkBoRateIn(List<Float> values) {
            addCriterion("stk_bo_rate in", values, "stkBoRate");
            return (Criteria) this;
        }

        public Criteria andStkBoRateNotIn(List<Float> values) {
            addCriterion("stk_bo_rate not in", values, "stkBoRate");
            return (Criteria) this;
        }

        public Criteria andStkBoRateBetween(Float value1, Float value2) {
            addCriterion("stk_bo_rate between", value1, value2, "stkBoRate");
            return (Criteria) this;
        }

        public Criteria andStkBoRateNotBetween(Float value1, Float value2) {
            addCriterion("stk_bo_rate not between", value1, value2, "stkBoRate");
            return (Criteria) this;
        }

        public Criteria andStkCoRateIsNull() {
            addCriterion("stk_co_rate is null");
            return (Criteria) this;
        }

        public Criteria andStkCoRateIsNotNull() {
            addCriterion("stk_co_rate is not null");
            return (Criteria) this;
        }

        public Criteria andStkCoRateEqualTo(Float value) {
            addCriterion("stk_co_rate =", value, "stkCoRate");
            return (Criteria) this;
        }

        public Criteria andStkCoRateNotEqualTo(Float value) {
            addCriterion("stk_co_rate <>", value, "stkCoRate");
            return (Criteria) this;
        }

        public Criteria andStkCoRateGreaterThan(Float value) {
            addCriterion("stk_co_rate >", value, "stkCoRate");
            return (Criteria) this;
        }

        public Criteria andStkCoRateGreaterThanOrEqualTo(Float value) {
            addCriterion("stk_co_rate >=", value, "stkCoRate");
            return (Criteria) this;
        }

        public Criteria andStkCoRateLessThan(Float value) {
            addCriterion("stk_co_rate <", value, "stkCoRate");
            return (Criteria) this;
        }

        public Criteria andStkCoRateLessThanOrEqualTo(Float value) {
            addCriterion("stk_co_rate <=", value, "stkCoRate");
            return (Criteria) this;
        }

        public Criteria andStkCoRateIn(List<Float> values) {
            addCriterion("stk_co_rate in", values, "stkCoRate");
            return (Criteria) this;
        }

        public Criteria andStkCoRateNotIn(List<Float> values) {
            addCriterion("stk_co_rate not in", values, "stkCoRate");
            return (Criteria) this;
        }

        public Criteria andStkCoRateBetween(Float value1, Float value2) {
            addCriterion("stk_co_rate between", value1, value2, "stkCoRate");
            return (Criteria) this;
        }

        public Criteria andStkCoRateNotBetween(Float value1, Float value2) {
            addCriterion("stk_co_rate not between", value1, value2, "stkCoRate");
            return (Criteria) this;
        }

        public Criteria andCashDivIsNull() {
            addCriterion("cash_div is null");
            return (Criteria) this;
        }

        public Criteria andCashDivIsNotNull() {
            addCriterion("cash_div is not null");
            return (Criteria) this;
        }

        public Criteria andCashDivEqualTo(Float value) {
            addCriterion("cash_div =", value, "cashDiv");
            return (Criteria) this;
        }

        public Criteria andCashDivNotEqualTo(Float value) {
            addCriterion("cash_div <>", value, "cashDiv");
            return (Criteria) this;
        }

        public Criteria andCashDivGreaterThan(Float value) {
            addCriterion("cash_div >", value, "cashDiv");
            return (Criteria) this;
        }

        public Criteria andCashDivGreaterThanOrEqualTo(Float value) {
            addCriterion("cash_div >=", value, "cashDiv");
            return (Criteria) this;
        }

        public Criteria andCashDivLessThan(Float value) {
            addCriterion("cash_div <", value, "cashDiv");
            return (Criteria) this;
        }

        public Criteria andCashDivLessThanOrEqualTo(Float value) {
            addCriterion("cash_div <=", value, "cashDiv");
            return (Criteria) this;
        }

        public Criteria andCashDivIn(List<Float> values) {
            addCriterion("cash_div in", values, "cashDiv");
            return (Criteria) this;
        }

        public Criteria andCashDivNotIn(List<Float> values) {
            addCriterion("cash_div not in", values, "cashDiv");
            return (Criteria) this;
        }

        public Criteria andCashDivBetween(Float value1, Float value2) {
            addCriterion("cash_div between", value1, value2, "cashDiv");
            return (Criteria) this;
        }

        public Criteria andCashDivNotBetween(Float value1, Float value2) {
            addCriterion("cash_div not between", value1, value2, "cashDiv");
            return (Criteria) this;
        }

        public Criteria andCashDivTaxIsNull() {
            addCriterion("cash_div_tax is null");
            return (Criteria) this;
        }

        public Criteria andCashDivTaxIsNotNull() {
            addCriterion("cash_div_tax is not null");
            return (Criteria) this;
        }

        public Criteria andCashDivTaxEqualTo(Float value) {
            addCriterion("cash_div_tax =", value, "cashDivTax");
            return (Criteria) this;
        }

        public Criteria andCashDivTaxNotEqualTo(Float value) {
            addCriterion("cash_div_tax <>", value, "cashDivTax");
            return (Criteria) this;
        }

        public Criteria andCashDivTaxGreaterThan(Float value) {
            addCriterion("cash_div_tax >", value, "cashDivTax");
            return (Criteria) this;
        }

        public Criteria andCashDivTaxGreaterThanOrEqualTo(Float value) {
            addCriterion("cash_div_tax >=", value, "cashDivTax");
            return (Criteria) this;
        }

        public Criteria andCashDivTaxLessThan(Float value) {
            addCriterion("cash_div_tax <", value, "cashDivTax");
            return (Criteria) this;
        }

        public Criteria andCashDivTaxLessThanOrEqualTo(Float value) {
            addCriterion("cash_div_tax <=", value, "cashDivTax");
            return (Criteria) this;
        }

        public Criteria andCashDivTaxIn(List<Float> values) {
            addCriterion("cash_div_tax in", values, "cashDivTax");
            return (Criteria) this;
        }

        public Criteria andCashDivTaxNotIn(List<Float> values) {
            addCriterion("cash_div_tax not in", values, "cashDivTax");
            return (Criteria) this;
        }

        public Criteria andCashDivTaxBetween(Float value1, Float value2) {
            addCriterion("cash_div_tax between", value1, value2, "cashDivTax");
            return (Criteria) this;
        }

        public Criteria andCashDivTaxNotBetween(Float value1, Float value2) {
            addCriterion("cash_div_tax not between", value1, value2, "cashDivTax");
            return (Criteria) this;
        }

        public Criteria andRecordDateIsNull() {
            addCriterion("record_date is null");
            return (Criteria) this;
        }

        public Criteria andRecordDateIsNotNull() {
            addCriterion("record_date is not null");
            return (Criteria) this;
        }

        public Criteria andRecordDateEqualTo(String value) {
            addCriterion("record_date =", value, "recordDate");
            return (Criteria) this;
        }

        public Criteria andRecordDateNotEqualTo(String value) {
            addCriterion("record_date <>", value, "recordDate");
            return (Criteria) this;
        }

        public Criteria andRecordDateGreaterThan(String value) {
            addCriterion("record_date >", value, "recordDate");
            return (Criteria) this;
        }

        public Criteria andRecordDateGreaterThanOrEqualTo(String value) {
            addCriterion("record_date >=", value, "recordDate");
            return (Criteria) this;
        }

        public Criteria andRecordDateLessThan(String value) {
            addCriterion("record_date <", value, "recordDate");
            return (Criteria) this;
        }

        public Criteria andRecordDateLessThanOrEqualTo(String value) {
            addCriterion("record_date <=", value, "recordDate");
            return (Criteria) this;
        }

        public Criteria andRecordDateLike(String value) {
            addCriterion("record_date like", value, "recordDate");
            return (Criteria) this;
        }

        public Criteria andRecordDateNotLike(String value) {
            addCriterion("record_date not like", value, "recordDate");
            return (Criteria) this;
        }

        public Criteria andRecordDateIn(List<String> values) {
            addCriterion("record_date in", values, "recordDate");
            return (Criteria) this;
        }

        public Criteria andRecordDateNotIn(List<String> values) {
            addCriterion("record_date not in", values, "recordDate");
            return (Criteria) this;
        }

        public Criteria andRecordDateBetween(String value1, String value2) {
            addCriterion("record_date between", value1, value2, "recordDate");
            return (Criteria) this;
        }

        public Criteria andRecordDateNotBetween(String value1, String value2) {
            addCriterion("record_date not between", value1, value2, "recordDate");
            return (Criteria) this;
        }

        public Criteria andExDateIsNull() {
            addCriterion("ex_date is null");
            return (Criteria) this;
        }

        public Criteria andExDateIsNotNull() {
            addCriterion("ex_date is not null");
            return (Criteria) this;
        }

        public Criteria andExDateEqualTo(String value) {
            addCriterion("ex_date =", value, "exDate");
            return (Criteria) this;
        }

        public Criteria andExDateNotEqualTo(String value) {
            addCriterion("ex_date <>", value, "exDate");
            return (Criteria) this;
        }

        public Criteria andExDateGreaterThan(String value) {
            addCriterion("ex_date >", value, "exDate");
            return (Criteria) this;
        }

        public Criteria andExDateGreaterThanOrEqualTo(String value) {
            addCriterion("ex_date >=", value, "exDate");
            return (Criteria) this;
        }

        public Criteria andExDateLessThan(String value) {
            addCriterion("ex_date <", value, "exDate");
            return (Criteria) this;
        }

        public Criteria andExDateLessThanOrEqualTo(String value) {
            addCriterion("ex_date <=", value, "exDate");
            return (Criteria) this;
        }

        public Criteria andExDateLike(String value) {
            addCriterion("ex_date like", value, "exDate");
            return (Criteria) this;
        }

        public Criteria andExDateNotLike(String value) {
            addCriterion("ex_date not like", value, "exDate");
            return (Criteria) this;
        }

        public Criteria andExDateIn(List<String> values) {
            addCriterion("ex_date in", values, "exDate");
            return (Criteria) this;
        }

        public Criteria andExDateNotIn(List<String> values) {
            addCriterion("ex_date not in", values, "exDate");
            return (Criteria) this;
        }

        public Criteria andExDateBetween(String value1, String value2) {
            addCriterion("ex_date between", value1, value2, "exDate");
            return (Criteria) this;
        }

        public Criteria andExDateNotBetween(String value1, String value2) {
            addCriterion("ex_date not between", value1, value2, "exDate");
            return (Criteria) this;
        }

        public Criteria andPayDateIsNull() {
            addCriterion("pay_date is null");
            return (Criteria) this;
        }

        public Criteria andPayDateIsNotNull() {
            addCriterion("pay_date is not null");
            return (Criteria) this;
        }

        public Criteria andPayDateEqualTo(String value) {
            addCriterion("pay_date =", value, "payDate");
            return (Criteria) this;
        }

        public Criteria andPayDateNotEqualTo(String value) {
            addCriterion("pay_date <>", value, "payDate");
            return (Criteria) this;
        }

        public Criteria andPayDateGreaterThan(String value) {
            addCriterion("pay_date >", value, "payDate");
            return (Criteria) this;
        }

        public Criteria andPayDateGreaterThanOrEqualTo(String value) {
            addCriterion("pay_date >=", value, "payDate");
            return (Criteria) this;
        }

        public Criteria andPayDateLessThan(String value) {
            addCriterion("pay_date <", value, "payDate");
            return (Criteria) this;
        }

        public Criteria andPayDateLessThanOrEqualTo(String value) {
            addCriterion("pay_date <=", value, "payDate");
            return (Criteria) this;
        }

        public Criteria andPayDateLike(String value) {
            addCriterion("pay_date like", value, "payDate");
            return (Criteria) this;
        }

        public Criteria andPayDateNotLike(String value) {
            addCriterion("pay_date not like", value, "payDate");
            return (Criteria) this;
        }

        public Criteria andPayDateIn(List<String> values) {
            addCriterion("pay_date in", values, "payDate");
            return (Criteria) this;
        }

        public Criteria andPayDateNotIn(List<String> values) {
            addCriterion("pay_date not in", values, "payDate");
            return (Criteria) this;
        }

        public Criteria andPayDateBetween(String value1, String value2) {
            addCriterion("pay_date between", value1, value2, "payDate");
            return (Criteria) this;
        }

        public Criteria andPayDateNotBetween(String value1, String value2) {
            addCriterion("pay_date not between", value1, value2, "payDate");
            return (Criteria) this;
        }

        public Criteria andDivListdateIsNull() {
            addCriterion("div_listdate is null");
            return (Criteria) this;
        }

        public Criteria andDivListdateIsNotNull() {
            addCriterion("div_listdate is not null");
            return (Criteria) this;
        }

        public Criteria andDivListdateEqualTo(String value) {
            addCriterion("div_listdate =", value, "divListdate");
            return (Criteria) this;
        }

        public Criteria andDivListdateNotEqualTo(String value) {
            addCriterion("div_listdate <>", value, "divListdate");
            return (Criteria) this;
        }

        public Criteria andDivListdateGreaterThan(String value) {
            addCriterion("div_listdate >", value, "divListdate");
            return (Criteria) this;
        }

        public Criteria andDivListdateGreaterThanOrEqualTo(String value) {
            addCriterion("div_listdate >=", value, "divListdate");
            return (Criteria) this;
        }

        public Criteria andDivListdateLessThan(String value) {
            addCriterion("div_listdate <", value, "divListdate");
            return (Criteria) this;
        }

        public Criteria andDivListdateLessThanOrEqualTo(String value) {
            addCriterion("div_listdate <=", value, "divListdate");
            return (Criteria) this;
        }

        public Criteria andDivListdateLike(String value) {
            addCriterion("div_listdate like", value, "divListdate");
            return (Criteria) this;
        }

        public Criteria andDivListdateNotLike(String value) {
            addCriterion("div_listdate not like", value, "divListdate");
            return (Criteria) this;
        }

        public Criteria andDivListdateIn(List<String> values) {
            addCriterion("div_listdate in", values, "divListdate");
            return (Criteria) this;
        }

        public Criteria andDivListdateNotIn(List<String> values) {
            addCriterion("div_listdate not in", values, "divListdate");
            return (Criteria) this;
        }

        public Criteria andDivListdateBetween(String value1, String value2) {
            addCriterion("div_listdate between", value1, value2, "divListdate");
            return (Criteria) this;
        }

        public Criteria andDivListdateNotBetween(String value1, String value2) {
            addCriterion("div_listdate not between", value1, value2, "divListdate");
            return (Criteria) this;
        }

        public Criteria andImpAnnDateIsNull() {
            addCriterion("imp_ann_date is null");
            return (Criteria) this;
        }

        public Criteria andImpAnnDateIsNotNull() {
            addCriterion("imp_ann_date is not null");
            return (Criteria) this;
        }

        public Criteria andImpAnnDateEqualTo(String value) {
            addCriterion("imp_ann_date =", value, "impAnnDate");
            return (Criteria) this;
        }

        public Criteria andImpAnnDateNotEqualTo(String value) {
            addCriterion("imp_ann_date <>", value, "impAnnDate");
            return (Criteria) this;
        }

        public Criteria andImpAnnDateGreaterThan(String value) {
            addCriterion("imp_ann_date >", value, "impAnnDate");
            return (Criteria) this;
        }

        public Criteria andImpAnnDateGreaterThanOrEqualTo(String value) {
            addCriterion("imp_ann_date >=", value, "impAnnDate");
            return (Criteria) this;
        }

        public Criteria andImpAnnDateLessThan(String value) {
            addCriterion("imp_ann_date <", value, "impAnnDate");
            return (Criteria) this;
        }

        public Criteria andImpAnnDateLessThanOrEqualTo(String value) {
            addCriterion("imp_ann_date <=", value, "impAnnDate");
            return (Criteria) this;
        }

        public Criteria andImpAnnDateLike(String value) {
            addCriterion("imp_ann_date like", value, "impAnnDate");
            return (Criteria) this;
        }

        public Criteria andImpAnnDateNotLike(String value) {
            addCriterion("imp_ann_date not like", value, "impAnnDate");
            return (Criteria) this;
        }

        public Criteria andImpAnnDateIn(List<String> values) {
            addCriterion("imp_ann_date in", values, "impAnnDate");
            return (Criteria) this;
        }

        public Criteria andImpAnnDateNotIn(List<String> values) {
            addCriterion("imp_ann_date not in", values, "impAnnDate");
            return (Criteria) this;
        }

        public Criteria andImpAnnDateBetween(String value1, String value2) {
            addCriterion("imp_ann_date between", value1, value2, "impAnnDate");
            return (Criteria) this;
        }

        public Criteria andImpAnnDateNotBetween(String value1, String value2) {
            addCriterion("imp_ann_date not between", value1, value2, "impAnnDate");
            return (Criteria) this;
        }

        public Criteria andBaseDateIsNull() {
            addCriterion("base_date is null");
            return (Criteria) this;
        }

        public Criteria andBaseDateIsNotNull() {
            addCriterion("base_date is not null");
            return (Criteria) this;
        }

        public Criteria andBaseDateEqualTo(String value) {
            addCriterion("base_date =", value, "baseDate");
            return (Criteria) this;
        }

        public Criteria andBaseDateNotEqualTo(String value) {
            addCriterion("base_date <>", value, "baseDate");
            return (Criteria) this;
        }

        public Criteria andBaseDateGreaterThan(String value) {
            addCriterion("base_date >", value, "baseDate");
            return (Criteria) this;
        }

        public Criteria andBaseDateGreaterThanOrEqualTo(String value) {
            addCriterion("base_date >=", value, "baseDate");
            return (Criteria) this;
        }

        public Criteria andBaseDateLessThan(String value) {
            addCriterion("base_date <", value, "baseDate");
            return (Criteria) this;
        }

        public Criteria andBaseDateLessThanOrEqualTo(String value) {
            addCriterion("base_date <=", value, "baseDate");
            return (Criteria) this;
        }

        public Criteria andBaseDateLike(String value) {
            addCriterion("base_date like", value, "baseDate");
            return (Criteria) this;
        }

        public Criteria andBaseDateNotLike(String value) {
            addCriterion("base_date not like", value, "baseDate");
            return (Criteria) this;
        }

        public Criteria andBaseDateIn(List<String> values) {
            addCriterion("base_date in", values, "baseDate");
            return (Criteria) this;
        }

        public Criteria andBaseDateNotIn(List<String> values) {
            addCriterion("base_date not in", values, "baseDate");
            return (Criteria) this;
        }

        public Criteria andBaseDateBetween(String value1, String value2) {
            addCriterion("base_date between", value1, value2, "baseDate");
            return (Criteria) this;
        }

        public Criteria andBaseDateNotBetween(String value1, String value2) {
            addCriterion("base_date not between", value1, value2, "baseDate");
            return (Criteria) this;
        }

        public Criteria andBaseShareIsNull() {
            addCriterion("base_share is null");
            return (Criteria) this;
        }

        public Criteria andBaseShareIsNotNull() {
            addCriterion("base_share is not null");
            return (Criteria) this;
        }

        public Criteria andBaseShareEqualTo(Float value) {
            addCriterion("base_share =", value, "baseShare");
            return (Criteria) this;
        }

        public Criteria andBaseShareNotEqualTo(Float value) {
            addCriterion("base_share <>", value, "baseShare");
            return (Criteria) this;
        }

        public Criteria andBaseShareGreaterThan(Float value) {
            addCriterion("base_share >", value, "baseShare");
            return (Criteria) this;
        }

        public Criteria andBaseShareGreaterThanOrEqualTo(Float value) {
            addCriterion("base_share >=", value, "baseShare");
            return (Criteria) this;
        }

        public Criteria andBaseShareLessThan(Float value) {
            addCriterion("base_share <", value, "baseShare");
            return (Criteria) this;
        }

        public Criteria andBaseShareLessThanOrEqualTo(Float value) {
            addCriterion("base_share <=", value, "baseShare");
            return (Criteria) this;
        }

        public Criteria andBaseShareIn(List<Float> values) {
            addCriterion("base_share in", values, "baseShare");
            return (Criteria) this;
        }

        public Criteria andBaseShareNotIn(List<Float> values) {
            addCriterion("base_share not in", values, "baseShare");
            return (Criteria) this;
        }

        public Criteria andBaseShareBetween(Float value1, Float value2) {
            addCriterion("base_share between", value1, value2, "baseShare");
            return (Criteria) this;
        }

        public Criteria andBaseShareNotBetween(Float value1, Float value2) {
            addCriterion("base_share not between", value1, value2, "baseShare");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}